#include "light.hpp"

Light::Light() : origin(Vector(0.0,0.0,0.0)) , direction(Vector(0.0,0.0,-1.0)) , ambient(Color(1.0,1.0,1.0)) , diffuse(Color(1.0,1.0,1.0)) , specular(Color(1.0,1.0,1.0)) { }

Light::Light(const Vector& _origin,const Vector& _direction,const Color& _ambient,const Color& _diffuse,const Color& _specular) : origin(_origin), direction(_direction), ambient(_ambient), diffuse(_diffuse), specular(_specular)
{}

Light::~Light(void) { }

void Light::set_origin(const Vector& _origin) { origin = _origin; }

void Light::set_direction(const Vector& _direction) { direction = _direction; }

void Light::set_ambient(const Color& _ambient) { ambient = _ambient; }

void Light::set_diffuse(const Color& _diffuse) { diffuse = _diffuse; }

void Light::set_specular(const Color& _specular) { specular = _specular; }

Vector Light::get_origin(void) const { return origin; }

Vector Light::get_direction(void) const { return direction; }

Color Light::get_ambient(void) const { return ambient; }

Color Light::get_diffuse(void) const { return diffuse; }

Color Light::get_specular(void) const { return specular; }
